package com.wingsoft.work.domain;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
import com.wingsoft.common.core.domain.BasicEntity;

/**
 * 用户任务对象 t_user_task
 *
 * @author hemj
 * @date 2025-10-20
 */
@Data
@TableName("t_user_task")
public class UserTask extends BasicEntity
{

    /** 主键 */
    private Long id;

    /** 用户id */
    private Long userId;

    /** 任务类型，1为文生视频，2为图+文生视频 */
    private Integer taskType;

    /** 图片地址 */
    private String picUrl;

    /** 视频描述 */
    private String des;

    /** 画面模式，1为横版，2为竖版，3为高清横版，4为高清竖版 */
    private Integer videoType;

    /** 使用积分 */
    private BigDecimal costPoint;

    /** 状态，1为生成中，2为生成成功，3为最终生成失败 */
    private Integer status;

    private Integer seconds;

    /** 视频地址 */
    private String videoUrl;

    /** 失败描述 */
    private String failMsg;

    private String taskId;

    /** 开始生成时间 */
    private Date startTime;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime finishTime;

    /**
     * 是否删除，1是0否
     */
    private Integer delFlag;


    @ApiModelProperty("当前接口类型")
    private String nowInterfaceType;

    @ApiModelProperty("历史接口类型，多个逗号隔开")
    private String hisInterfaceType;

    /** 接口内容 */
    private String apijson;

    /** oss服务视频地址 */
    private String ossVideoUrl;

    /** oss转存状态，1为新建，2为成功，3为转存失败 */
    private Integer ossStatus;

    /** 重试次数 */
    private Integer ossTime;
}
